Implementing OCL as a Database Query Language

نویسندگان

  • Piotr Habela
  • Krzysztof Kaczmarski
  • Krzysztof Stencel
  • Kazimierz Subieta
چکیده

The approach of model-driven software development sketches the vision of the next big step in raising the level of abstraction and flexibility of programming tools. The key expectation behind MDA is achieving a productivity gain through the automating software construction based on models. In this paper we focus on one of possible model application, namely executable models. If models are to be executable, precise semantics is inevitable. Furthermore, executable models could blur the distinction between modelling and programming, since they would facilitate automatic production of executable code. This requires the presence of sophisticated transformation tools encapsulating the knowledge on particular target platform technologies. UML elements of Actions and Activities make it possible to represent programs similar to those in common programming languages but data processing requires querying capability as well. Seamless integration of UML [2] as a programming language and OCL [1] as a query language was done in the following steps: 1. Data structures are modelled using UML Classes package. However, since the standard is not defining any kind of global containers for database objects (like for instance user’s variables) we assume that each model must contain at least one class marked with <> stereotype that will be a definition for root database objects. Attributes of this class will be treated as global application variables from which all queries may begin. We also keep extension-starting queries which may use class names representing a collection of all their instances. 2. UML Actions and UML Activities are considered to be the imperative part of the language. They cover all procedural constructs, loops, conditional statements, variable declarations, exceptions throwing and catching, etc. Since UML does not define any kind of textual syntax for these elements and there are no modelling tools capable of creating such models yet, we decided to introduce our own textual syntax for them. This gives us possibility of describing programs which may be then converted to UML models and stored as instances of a metamodel. 3. The metamodel is a result of integration UML and OCL metamodels as described in OCL specification and implemented by MDT-OCL Eclipse plug-ins [3].

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

OCL 2.0 - Implementing the Standard for Multiple Metamodels

OCL 2.0 is the newest version of the OMG’s constraint language to accompany their suit of Object Oriented modelling languages. The use of OCL as an accompanying constraint and query language to modelling with these languages is essential. As tools are built to support the modelling languages, it is also necessary to implement the OCL. This paper reports our experience of implementing OCL based ...

متن کامل

انتخاب مناسب‌ترین زبان پرس‌وجو برای استفاده از فرا‌‌پیوندها جهت استخراج داده‌ها در حالت دیتالوگ در سامانه پایگاه داده استنتاجی DES

Deductive Database systems are designed based on a logical data model. Data (as opposed to Relational Databases Management System (RDBMS) in which data stored in tables) are saved as facts in a Deductive Database system. Datalog Educational System (DES) is a Deductive Database system that Datalog mode is the default mode in this system. It can extract data to use outer joins with three query la...

متن کامل

Derived Classes as a basis for Views in UML/OCL Data Models

UML is the de facto standard language for analysis and design in object-oriented frameworks. Information systems, and in particular information systems based on databases and their applications, rely heavily on sound principles of analysis and design. Many present-day database applications employ object-oriented principles in the phases of analysis and design due to the advantages of expressive...

متن کامل

Applying Query by Example in OCL for Platform-independent Programming

Precise modelling of behaviour is an area where programming meets modelling, and textual syntax competes with a visual one. By developing a UML based platform-independent framework, we aimed to find a visual syntax aid to make the language more approachable to stakeholders, while taking advantage of existing UML syntax intuitions and offering a truly higher level of abstraction. Our solution co...

متن کامل

On Querying UML Data Models with OCL

UML is the de-facto standard language for Object-Oriented analysis and design of information systems. Persistent storage and extraction of data in such systems is supported by databases and query languages. UML sustains many aspects of software engineering; however, it does not provide explicit facility for writing queries. It is crucial for any such query language to have, at least, the expres...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2007